#pragma once

#include <QtWidgets/QMainWindow>
#include "ui_MainWindow.h"
#include <pcl/io/io.h>
#include <pcl/io/ply_io.h>
#include <pcl/io/obj_io.h>
#include <pcl/io/vtk_lib_io.h>
#include <pcl/PolygonMesh.h>
#include <pcl/TextureMesh.h>
#include <pcl/point_types.h>
#include <pcl/visualization/pcl_visualizer.h>

#include <vtkRenderWindow.h>
#include <QColor>
class MainWindow : public QMainWindow
{
	Q_OBJECT

public:
	MainWindow(QWidget *parent = Q_NULLPTR);

public slots:
	void onLoadFace();
	void onLoadFeature();
	void onChanegPointSize(int value);
	void onChangePointColor();
private:
	Ui::MainWindowClass ui;
	pcl::PointCloud<pcl::PointXYZ>::Ptr features;
	pcl::PolygonMesh::Ptr mesh;
	pcl::TextureMesh::Ptr texture_mesh;
	pcl::visualization::PCLVisualizer::Ptr viewer;
	QColor last_color = "white";
	int last_point_size = 1;
};